home *** CD-ROM | disk | FTP | other *** search
/ Apple II Magazines (DO) / Peeker Nr. 15 (1986)(Verlag, Dr. Alfred Huethig)(DE).zip / Peeker Nr. 15 (1986)(Verlag, Dr. Alfred Huethig)(DE).do / DATENDEMOS.txt < prev    next >
Text File  |  1996-12-24  |  3KB  |  204 lines

  1.  
  2. PROGRAM DATENDEMOS;
  3.  
  4. PROCEDURE DEMO1A;
  5. VAR
  6.  I: INTEGER; {implizit}
  7. BEGIN
  8.  WRITELN ('DEMO1A');
  9.  I := 10; WRITELN (I)
  10. END;
  11.  
  12. PROCEDURE DEMO1B;
  13. TYPE
  14.  INT = INTEGER; {explizit}
  15. VAR
  16.  I: INT;
  17. BEGIN
  18.  WRITELN ('DEMO1B');
  19.  I := 10; WRITELN (I)
  20. END;
  21.  
  22. PROCEDURE DEMO2;
  23. VAR
  24.  B: BOOLEAN;
  25.  I: INTEGER;
  26. BEGIN
  27. WRITELN ('DEMO2');
  28. I := 3; B := ODD (I); {B = TRUE}
  29. IF B = TRUE THEN WRITELN ('ungerade');
  30. I := 2; B := ODD (I); {B = FALSE}
  31. IF B = FALSE THEN WRITELN ('gerade')
  32. END;
  33.  
  34. PROCEDURE DEMO3;
  35. VAR
  36.  I, IE: INTEGER;
  37.  R, RE: REAL;
  38. BEGIN
  39. WRITELN ('DEMO3');
  40. R := 1.2;
  41. I := 12;
  42. RE := SIN (R); WRITELN (RE);
  43. RE := SIN (I); WRITELN (RE);
  44. RE := SQR (R); WRITELN (RE);
  45. IE := SQR (I); WRITELN (IE)
  46. END;
  47.  
  48. PROCEDURE DEMO4;
  49. VAR
  50.  C: CHAR;
  51.  I: INTEGER;
  52. BEGIN
  53. WRITELN ('DEMO4');
  54. C := 'B';
  55. WRITELN (SUCC (C)); {'C'}
  56. WRITELN (PRED (C)); {'A'}
  57. C := 'A';
  58. I := ORD (C); WRITELN (I); {65}
  59. I := 65;
  60. C := CHR (I); WRITELN (C); {'A'}
  61. C := ''''; WRITELN (C); {Apostroph!}
  62. C := 'Y';
  63. IF C < 'Z' THEN WRITELN ('Y < Z');
  64. FOR C := ' ' TO '~' DO WRITE (C);
  65. WRITELN;
  66. END;
  67.  
  68. PROCEDURE DEMO5;
  69. VAR
  70.  B1, B2: BOOLEAN;
  71. BEGIN
  72. WRITELN ('DEMO5');
  73. B1 := ('A' = 'A'); {TRUE}
  74. B2 := ('A' = 'B'); {FALSE}
  75. {knapper:}
  76. IF B1 THEN WRITELN ('w');
  77. IF NOT B2 THEN WRITELN ('f');
  78. {klarer:}
  79. IF B1 = TRUE THEN WRITELN ('w');
  80. IF B2 = FALSE THEN WRITELN ('f');
  81. B1 := PRED (TRUE); {FALSE}
  82. B2 := SUCC (FALSE); {TRUE}
  83. IF B1 < B2 THEN WRITELN ('f-w');
  84. {0 AND 0 = 0
  85.  0 AND 1 = 0
  86.  1 AND 0 = 0
  87.  1 AND 1 = 1}
  88. FOR B1 := FALSE TO TRUE DO
  89. FOR B2 := FALSE TO TRUE DO
  90. WRITELN (ORD (B1), ' AND ', ORD (B2),
  91.         ' = ', ORD (B1 AND B2))
  92. END;
  93.  
  94. PROCEDURE DEMO6;
  95. TYPE
  96.  ZAHL = (NULL, EINS, ZWEI);
  97. VAR
  98.  Z: ZAHL;
  99. BEGIN
  100. WRITELN ('DEMO6');
  101. WRITELN (ORD (EINS));        {1}
  102. WRITELN (ORD (SUCC (EINS))); {2}
  103. WRITELN (ORD (PRED (EINS))); {0}
  104. Z := NULL; WRITELN (ORD (Z)) {0}
  105. END;
  106.  
  107. PROCEDURE DEMO7;
  108. TYPE
  109.  SET1 = SET OF 1..5; {5}
  110.  SET2 = SET OF INTEGER; {nur 0..255}
  111.  SET3 = SET OF 'A'..'Z'; {26}
  112.  SET4 = SET OF CHAR; {0..255}
  113. VAR
  114.  M1: SET1; M2: SET2; M3: SET3; M4: SET4;
  115.  C: CHAR; I: INTEGER;
  116. BEGIN
  117. WRITELN ('DEMO7');
  118. M2 := [1, 10, 100..200];
  119. IF 199 IN M2 THEN WRITELN ('ja');
  120. M4 := ['A'..'Z', 'a'..'z'];
  121. IF NOT ('#' IN M4) THEN WRITELN ('nein')
  122. END;
  123.  
  124. PROCEDURE DEMO8;
  125. TYPE
  126.  REC = RECORD
  127.        I: INTEGER;
  128.        R: REAL {kein ';' vor END!}
  129.        END;
  130. VAR
  131.  R1, R2: REC;
  132. BEGIN
  133. WRITELN ('DEMO8');
  134.  R1.I := 123;
  135.  R1.R := 123.456;
  136. WRITELN (R1.I:5);
  137. WRITELN (R1.R:10:3);
  138.  R2 := R1;
  139. WRITELN (R2.I:5);
  140. WRITELN (R2.R:10:3)
  141. END;
  142.  
  143. PROCEDURE DEMO9;
  144. CONST
  145.  S = 9;
  146.  Z = 9;
  147. TYPE
  148.  MAT = ARRAY [0..S, 0..Z] OF INTEGER;
  149. VAR
  150.  M1, M2: MAT;
  151.  I, J: INTEGER;
  152. BEGIN
  153. WRITELN ('DEMO9');
  154. FOR I := 0 TO S DO
  155. FOR J := 0 TO Z DO
  156. M1[I,J] := I * J;
  157. M2 := M1;
  158. FOR I := 0 TO S DO
  159. BEGIN
  160.  FOR J := 0 TO Z DO
  161.  WRITE (M2[I,J]:5);
  162.  WRITELN
  163. END
  164. END;
  165.  
  166. PROCEDURE MITGLIEDER;
  167. CONST
  168.  N = 3;
  169. TYPE
  170.  MITGLIED = RECORD
  171.  ZUNAME:   ARRAY [1..20] OF CHAR;
  172.  EINTRITT: INTEGER;
  173.  BEITRAG:  REAL
  174.  END;
  175. VAR
  176.  M: ARRAY [1..N] OF MITGLIED;
  177.  I: INTEGER;
  178. BEGIN
  179. WRITELN ('Mitglieder');
  180. FOR I := 1 TO N DO
  181. BEGIN
  182.  WRITELN ('Nummer ', I);
  183.  WRITE   ('Zuname: ');
  184.  READLN  (M[I].ZUNAME);
  185.  WRITE   ('Eintritt: ');
  186.  READLN  (M[I].EINTRITT);
  187.  WRITE   ('Beitrag: ');
  188.  READLN  (M[I].BEITRAG)
  189. END;
  190. WRITELN;
  191. FOR I := 1 TO N DO
  192. BEGIN
  193.  WRITE   (M[I].ZUNAME:20);
  194.  WRITE   (M[I].EINTRITT:10);
  195.  WRITELN (M[I].BEITRAG:12:2)
  196. END
  197. END;
  198.  
  199. BEGIN
  200. DEMO1A; DEMO1B; DEMO2; DEMO3; DEMO4;
  201. DEMO5; DEMO6; DEMO7; DEMO8; DEMO9;
  202. MITGLIEDER
  203. END.
  204.